#ifndef DISTANCE_CONFIG_H
#define DISTANCE_CONFIG_H

#include <opencv2/opencv.hpp>

namespace DistanceConfig {

struct CalibrationConfig
{
	cv::Size boardSize;
	double boardSquareSize;
	cv::Mat cameraMatrix;
	cv::Mat distCoeffs;

	CalibrationConfig();
	bool readConfigFrom(const std::string& filename);
	bool readResultFrom(const std::string& filename);
	bool writeConfigTo(const std::string& filename);
	bool writeResultTo(const std::string& filename);
};


struct DistanceConfig
{
	double focalLength;
	cv::Size2d cellSize;
	double radius;
	double squareLength;
	double reference;
	double scale;

	DistanceConfig();
	bool readFrom(const std::string& filename);
	bool writeTo(const std::string& filename);
};

};

#endif
